//
//  DKPublicHttp.h
//  DanKU
//
//  Created by 吴斌 on 2023/10/1.
//

#import <Foundation/Foundation.h>
#import "DKAuthLivenConfigModel.h"
#import "DKAuthLiveBase64Model.h"
#import "DKUserProductPackModel.h"
#import "DKUserLoanStatusModel.h"
#import "DKOrderListModel.h"
#import "DKFaqTitleModel.h"
#import "DKFaqTypeModel.h"
#import "DKOrderDetailModel.h"

#import "DKAuthCommonDicModel.h"
#import "DKCustomerServiceModel.h"
#import "DKAuthPanCardModel.h"
#import "DKAuthAwardAmountModel.h"

#import "DKBankCardModel.h"
#import "DKLoanDetailModel.h"
#import "DKOrderStatusModel.h"
#import "DKExtExpiredModel.h"
NS_ASSUME_NONNULL_BEGIN

@interface DKPublicHttp : NSObject
//获取user-service公钥
+(void)apiUserRsaKeyForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//获取验证码次数
+(void)apiUserSendSmsCountForAPI:(NSDictionary *)param complete:(void(^)(NSString * codeCount))complete;
//获取验证码次数
+(void)apiUserSendSmsForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//获取下一步认证信息
+(void)apiGetNextStepForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//检查是否可以做OCR/活体
+(void)apiCheckIsCanAuthForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//活体策略配置
+(void)apiAuthLivenConfigForAPI:(NSDictionary *)param complete:(void(^)(DKAuthLivenConfigModel *dk_AuthLivenConfigMdl))complete;
//活体识别
+(void)apiOssLiveBase64ForAPI:(NSDictionary *)param withData:(NSData *)imgData complete:(void(^)(DKAuthLiveBase64Model *dk_AuthLiveBase64Mdl))complete fail:(void(^)(NSString * msg))fail;
//活体预处理
+(void)apiPreLivenessForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//保存用户信息
+(void)apiSaveUserInfoForAPI:(NSDictionary *)param complete:(void(^)(void))complete fail:(void(^)(void))fail;

//获取修改密码凭证信息
+(void)apiCheckPwdSmsCodeForAPI:(NSDictionary *)param complete:(void(^)(NSString *upPasswordCertificate))complete;
//设置新密码
+(void)apiResetPwdForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//获取FAQ
+(void)apiGetFAQForAPI:(NSDictionary *)param complete:(void(^)(NSString *faq))complete;

//获取产品列表
+(void)apiGetProductPackForAPI:(NSDictionary *)param complete:(void(^)(DKUserProductPackModel *userProductPackMdl))complete;
//检查用户放款状态
+(void)apiGetUserLoanStatusForAPI:(NSDictionary *)param complete:(void(^)(DKUserLoanStatusModel *userLoanStatusMdl))complete;

//订单列表
+(void)apiGetOrderListForAPI:(NSDictionary *)param complete:(void(^)(DKOrderListModel *orderlist))complete;
//订单详情
+(void)apiGetOrderDetailAPI:(NSDictionary *)param complete:(void(^)(DKOrderDetailModel *orderlist))complet;
//还款详情
+(void)apiGetOrderRepayDetailAPI:(NSDictionary *)param complete:(void(^)(DKRepaymentDetailModel *orderlist))complete;
//展期订单详情
+(void)apiGetOrderCalculateDetailAPI:(NSDictionary *)param complete:(void(^)(DKDelayFlexibleModel *orderlist))complete;
//获取还款图标
+(void)apiGetOrderBackImgAPI:(NSDictionary *)param complete:(void(^)(DKBankimagesModel *orderlist))complete;
//获取订单状态
+(void)apiOrderStateForAPI:(NSDictionary *)param complete:(void(^)(void))complete;

// 我的页面
//登出
+(void)apiLogoutUserForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//意见反馈
+(void)apiUserComplaintForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//客服信息
+(void)apiCustomerServiceInfoForAPI:(NSDictionary *)param complete:(void(^)(DKCustomerServiceModel *customerServiceMdl))complete;
//获取银行卡列表
+(void)apiGetBankCardListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *bankCardMdls))complete;
//FAQ
//FAQ标题列表
+(void)apiFaqGetTypeListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *faqTitleMdls))complete;
//FAQ标题下列表
+(void)apiGetFaqTypeListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *faqUserMdls))complete;
//FAQ意见反馈
+(void)apiFaqScoreForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//FAQ模糊查询
+(void)apiGetQueryFaqListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *faqUserMdls))complete;

//认证
//获取所有步骤的奖励金钱
+(void)apiGetAwardAmountForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//基础信息对应的下拉列表
+(void)apiGetCommonDictListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *commonDictMdls))complete;
//银行卡正面认证
+(void)apiGetCommonPanPositiveForAPI:(NSDictionary *)param withData:(NSData *)imgData complete:(void(^)(DKAuthPanCardModel *dk_AuthPanCardMdl))complete fail:(void(^)(NSString * msg))fail;
//获取银行列表
+(void)apiGetBankListForAPI:(NSDictionary *)param complete:(void(^)(NSArray *bankMdls))complete;
//设置密码
+(void)apiUserSetPwdForAPI:(NSDictionary *)param complete:(void(^)(void))complete;

//总借款信息
+(void)apiTotalLoanInfoForAPI:(NSDictionary *)param complete:(void(^)(DKLoanDetailModel *dk_LoanDetailMdl))complete;
//申请借款
+(void)apiLoanApplyForAPI:(NSDictionary *)param complete:(void(^)(BOOL isScore))complete;
//用户提交评分
+(void)apiUserSubmitRateForAPI:(NSDictionary *)param complete:(void(^)(void))complete;

//检查用户扩展信息是否过期
+(void)apiCheckExtExpiredForAPI:(NSDictionary *)param complete:(void(^)(DKExtExpiredModel *extExpiredMdl))complete;
//扩展信息上传
+(void)apiAuthExtInfoForAPI:(NSDictionary *)param complete:(void(^)(void))complete;
//修改银行卡
+(void)apiModifyBankCardForAPI:(NSDictionary *)param complete:(void(^)(void))complete fail:(void(^)(void))fail;
//行为数据上传
+(void)apiUserBrhavRecordForAPI:(NSDictionary *)param withPageName:(NSString *)pageName withAction:(NSString *)action complete:(void(^)(void))complete fail:(void(^)(void))fail;
//风控埋点
+(void)apiUserRiskForAPI:(NSString *)sceneType complete:(void(^)(void))complete fail:(void(^)(void))fail;
@end

NS_ASSUME_NONNULL_END
